home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / arc / fact127.zip / FACT.DOC < prev    next >
Text File  |  1996-05-23  |  17KB  |  388 lines

  1.  
  2.                                  FACT v1.27
  3.  
  4.                (Revision history is at the end of this file)
  5.  
  6.                DOS utility: Freeware Archive Conversion Tool
  7.                     Freeware, copyright (c) May 23, 1996
  8.                                      by
  9.                            David Daniel Anderson
  10.                                  Reign Ware
  11.  
  12.                   ** READ REIGNWAR.TXT FOR LEGAL TERMS **
  13.  
  14. ** NEWS FLASH!  FACT support provided in the ILink Compression conference! **
  15.  
  16.  
  17. FACT is the world's ONLY freeware archive converter for DOS which preserves
  18. complete subdirectory structures and converts ALL nested archives - even
  19. those in subdirectories. (FACT is unique in this regard, as far as I know.)
  20.  
  21. FACT is easy to use, small, command-line operated, fully user-expandable AND
  22. includes full Pascal source code.
  23.  
  24. FACT also includes a companion utility (SMALLEST.EXE) which will save only
  25. the smallest of the newly converted archives.  See SMALLEST.DOC for details.
  26.  
  27.  
  28.        DOCUMENT SECTIONS                GO TO LINE NUMBER
  29.        --------------------------------------------------
  30.        Preparation, Instant Start                      40
  31.        Fast Start Information                          58
  32.        Detailed Explanation                            79
  33.        The ".INI" Files                               146
  34.        Compressor Features and Limitations            169
  35.        Duplicate Nested Archives                      280
  36.        The Future of FACT                             310
  37.        Revision History                               336
  38.  
  39.  
  40.                        //////////////////////////////
  41.                        | PREPARATION, INSTANT START |
  42.                        \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  43.  
  44. Preparation:
  45.  
  46. Before running FACT, put FACT.EXE and FACT.INI together in one directory.
  47. This directory need not be on the PATH -- just run c:\dir\FACT.EXE if the
  48. directory is not on the PATH.  No other FACT files are needed to run FACT.
  49.  
  50. Instant start:
  51.  
  52.   1) Follow instructions above regarding preparation.
  53.   2) Run "FACT" with no parameters to see a help screen.
  54.   3) Test thoroughly.
  55.   4) Use and enjoy!  (You may wish to use "MAKETINY.BAT".)
  56.  
  57.  
  58.                          //////////////////////////
  59.                          | FAST START INFORMATION |
  60.                          \\\\\\\\\\\\\\\\\\\\\\\\\\
  61.  
  62.    Usage :  FACT archives .NewExt [-d] [-q] [-w] [-1]
  63.  
  64.    Where :  "archives" is specification of the archives to convert.
  65.          :  ".NewExt" is the extension(s) you wish to convert them to.
  66.          :  "-d"=del - forces the original archive to be deleted.  [Optional]
  67.          :  "-q"=quiet - hides most of the compressors' messages.  [Optional]
  68.          :  "-w"=watch - causes FACT to pause after every action.  [Optional]
  69.          :  "-1"=1 level - only recompress the _primary_ archive.  [Optional]
  70.  
  71. Examples :  FACT c:\dls\*.zip .lzh
  72.          :  FACT somefile.arc .arj .zip .uc2 -d
  73.          :  FACT anyfiles.* .rar -d -q
  74.  
  75.    Hints :  DOS wildcards may be used when specifying the archives.
  76.          :  Multiple ".NewExt" new extensions may be specified at one time.
  77.  
  78.  
  79.                           ////////////////////////
  80.                           | DETAILED EXPLANATION |
  81.                           \\\\\\\\\\\\\\\\\\\\\\\\
  82.  
  83.   Command line:  FACT archives .NewExt [-d] [-q] [-w] [-1]
  84.  
  85.  
  86.   archives -  This is where you specify which archives you wish to
  87.               convert.  FACT will only convert archives which have
  88.               been defined in FACT.INI, and which FACT is able to
  89.               validate when it runs.
  90.  
  91.               You may use DOS wildcards (* and ?) when specifying
  92.               which archives to process.
  93.  
  94.               Examples:   c:\dls\*.*
  95.                           *.zip
  96.                           funnier.ar?
  97.                           d:\temp\bbs\dir01\pk*.lzh
  98.  
  99.  
  100.   .NewExt  -  Substitute the extensions used by the compressor or
  101.               compressors that you wish to use.  You may specify
  102.               more than one new extension.  Separate with spaces.
  103.               You *must* include the period at the beginning!
  104.  
  105.               Examples:   .rar
  106.                           .rar .uc2 .lzh
  107.                           .acb .ha .yc .rar .zip .arj .paq
  108.  
  109.  
  110.   -d       -  This will cause the original archive to be deleted
  111.   (delete)    when FACT is done processing.  FACT is intelligent
  112.               enough to NOT delete an archive which was simply
  113.               recompressed.  In other words, if you recompress all
  114.               the archives in a directory to ".arj", and some of
  115.               them are *already* ARJ files, FACT will not delete
  116.               any of the ARJ files.
  117.  
  118.  
  119.   -q       -  QUIET mode causes most of the messages from the
  120.   (quiet)     compressors to be hidden (sent to NUL).  A few
  121.               messages from FACT itself will still be displayed.
  122.  
  123.               QUIET and WATCH mode affect different output, so you
  124.               may use both at the same time.
  125.  
  126.  
  127.   -w       -  WATCH mode causes FACT to pause after running each
  128.   (watch)     compressor/ decompressor, and at various other times
  129.               after it has displayed something of note.
  130.  
  131.               WATCH mode is especially useful when try to remedy
  132.               problem conversions.
  133.  
  134.               QUIET and WATCH mode affect different output, so you
  135.               may use both at the same time.
  136.  
  137.  
  138.   -1       -  Only recompress the primary archive.  Do NOT recompress
  139.   (1 level)   any nested archives.  This can speed up processing.
  140.  
  141.               I recommend that all archives intended for redistribution
  142.               be processed with this switch.  Converting nested archives
  143.               may cause an installation program to function improperly.
  144.  
  145.  
  146.                             ////////////////////
  147.                             | THE ".INI" FILES |
  148.                             \\\\\\\\\\\\\\\\\\\\
  149.  
  150. Like many programs today, FACT.EXE uses an ".INI" (pronounced "in'EE")
  151. file to allow the user to "initialize" (or set) various options.
  152.  
  153. FACT.EXE and FACT.INI must be located in the same directory as each other.
  154. That is the *only* place where FACT.EXE will look for FACT.INI.
  155.  
  156. The FACT package includes three .INI files.  You may use any one of them.
  157. Simply rename it to FACT.INI and place in the same directory as FACT.EXE.
  158. This is what each contains:
  159.  
  160.    1) FACT.INI - simple INI file with definitions for just six of
  161.       the most common archives (ARC, ARJ, LZH, RAR, UC2 and ZIP).
  162.  
  163.    2) MINI.INI - same as above.  This is a backup or reference copy.
  164.  
  165.    3) FULL.INI - many more archivers defined.  Also includes instructions
  166.       for defining even more, and for revising the existing ones.
  167.  
  168.  
  169.                   ///////////////////////////////////////
  170.                   | COMPRESSOR FEATURES AND LIMITATIONS |
  171.                   \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  172.  
  173. Each compressor has different features, and different command-line options
  174. to activate those features.  In most cases, FACT is not able to accomplish
  175. anything that the compressors themselves cannot.
  176.  
  177. Below is a list of features that I try to support in FACT, with accompanying
  178. notes on which compressors actually have those features.
  179.  
  180.  
  181. *) Processing subdirectories within archives.
  182.  
  183.    Very few compressors written prior to about 1991 include subdirectories
  184.    when creating archives.
  185.  
  186.    Unfortunately for people using those compressors, many programs today are
  187.    distributed with directory structures in the archive.
  188.  
  189.    For those compressors that do not include subdirectories, the directory
  190.    structure is destroyed upon conversion.  FACT awkwardly works around this
  191.    limitation by compressing each subdirectory as a separate archive.
  192.    This isn't an ideal solution, but I think it helps keeps files separated.
  193.  
  194.    The following have been tested,      | The following have been tested,
  195.    and reliably archive subdirectories  | and do NOT archive subdirectories
  196.    -------------------------------------|-----------------------------------
  197.    ACB                                  |  ARC (most versions)
  198.    AIN                                  |  DWC (limited support, see FULL.INI)
  199.    ARJ                                  |  HAP
  200.    HA                                   |  JRC (JRchive)
  201.    HPK (HPACK)                          |  PUT
  202.    HYP (HYPER)                          |  SAR
  203.    LIB (CODEC)                          |  ZOO (incompatible method)
  204.    LIM (LIMIT)                          |
  205.    LZH (LHA)                            |
  206.    LZS (LARC, by MIKI et al.)           |
  207.    PAK                                  |
  208.    PAQ (Quantum)                        |
  209.    RAR                                  |
  210.    SQZ (Squeeze It)                     |
  211.    UC2 (Ultra Compressor)               |
  212.    X1                                   |
  213.    YC (YAC)                             |
  214.    ZIP (PKZIP, INFO-ZIP)                |
  215.    -------------------------------------------------------------------------
  216.  
  217.  
  218. *) Authenticity verification/ Security envelopes/ Protection/ etc.
  219.  
  220.    PKZIP, ARJ, RAR and UC2 all have some feature to alert the user to the
  221.    possibility that an archive has been tampered with.
  222.  
  223.    In theory, one should avoid converting these archives, since the anti-
  224.    tampering protection will be removed.
  225.  
  226.    I tried to write FACT so that it would detect these anti-tampering
  227.    schemes, so that it could avoid converting archives employing them.
  228.  
  229.    However, since I was unsuccessful in finding easy and reliable methods
  230.    of detecting whether they had been used, I was unable to write FACT to
  231.    respect them.  If anybody can and wishes to help me out, please do so!
  232.  
  233.  
  234. *) Archive and file comments.
  235.  
  236.    Many modern compressors allow the user to include comments in the
  237.    archive.  Sometimes comments are also allowed for each included file.
  238.  
  239.    FACT does *not* preserve these comments, for these reasons:
  240.  
  241.      1) Many compressors do not support them.
  242.      2) The overhead associated with saving and adding them would be
  243.         horrendous.
  244.  
  245.  
  246. *) Archive time/ date stamp.
  247.  
  248.    When modifying archives, most compressors allow the user to choose to set
  249.    the archive's time/date stamp to that of the original, that of the newest
  250.    file contained in the archive, or to the current system date/ time.
  251.  
  252.    FACT always sets the archive time to the date of the newest file within.
  253.    Supporting other options *may* be a feature in future versions of FACT.
  254.  
  255.  
  256. *) Extensions different from a compressor's default extension.
  257.  
  258.    Most compressors allow the user to choose what extension to put on the
  259.    archive.  When modifying the archive, these compressors are able to
  260.    examine the file itself to determine if it is the expected type.
  261.  
  262.    FACT only looks at file extensions, it does not examine the file itself.
  263.  
  264.    In other words, if FACT finds a file named "SODA.ZIP", it will assume
  265.    that it is an archive created by PKZIP, INFO-ZIP or some other compatible
  266.    archiver.  If "SODA.ZIP" is really an ARJ file, a text file or anything
  267.    *but* an actual ZIP archive, FACT will be unable to decompress it.  In
  268.    that case, FACT will leave it as is.
  269.  
  270.    Some archive convertors examine each file, and convert archives base on
  271.    their "signatures".  FACT does not, for the following reasons:
  272.  
  273.       1) Very seldom do archives have an extension other than the
  274.          default.
  275.       2) When they do, it is usually for a good reason:  they may be
  276.          installation files which must remain in their original format
  277.          in order for the installation program to function properly.
  278.  
  279.  
  280.                        /////////////////////////////
  281.                        | DUPLICATE NESTED ARCHIVES |
  282.                        \\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  283.  
  284. Other than the compressor limitations noted above, you should be aware of
  285. the following problem that has no ideal solution.
  286.  
  287. When an archive contains two or more archives with the same file name, but
  288. different file extensions, and both are in the same subdirectory, only one
  289. will be recompressed as specified.
  290.  
  291. For the purposes of the explanations below, assume you have an archive named
  292. BRITAIN.ZIP, which contains within it the archives WALES.PAK and WALES.ARC.
  293.  
  294.      BRITAIN.ZIP >──┬──> WALES.PAK
  295.                     └──> WALES.ARC
  296.  
  297.   *) When you tell FACT to convert BRITAIN.ZIP to BRITAIN.ARJ, FACT
  298.      will simply skip WALES.PAK or WALES.ARC - it only converts the
  299.      first archive it encounters.
  300.  
  301.   *) But if you tell FACT to convert the BRITAIN.ZIP to BRITAIN.PAK,
  302.      FACT converts the first WALES archive that it encounters, and
  303.      then renames the other one.
  304.  
  305.      When renaming, FACT substitutes a hyphen for the first letter of
  306.      the file extension.  Thus, FACT would either rename WALES.ARJ to
  307.      WALES.-RJ or WALES.PAK to WALES.-AK.
  308.  
  309.  
  310.                            //////////////////////
  311.                            | THE FUTURE OF FACT |
  312.                            \\\\\\\\\\\\\\\\\\\\\\
  313.  
  314. I do have plans for future versions of FACT!
  315.  
  316. Revisions may include:
  317.  
  318.   *) An option to specify on the command line which .INI file to use?
  319.      PLEASE tell me if you want this!
  320.  
  321.   *) An option to scan a file that specifies which extensions to use.
  322.      This would only be needed by compressor enthusiasts, for when the
  323.      command line isn't long enough.
  324.  
  325.   *) Tested definitions for more file compression programs, if possible.
  326.  
  327.      Note: I've defined all the compressors that I can locate.  If you have
  328.      other compressors, please contact me so that we may discuss how I may
  329.      obtain copies of them from you.  Thank you!
  330.  
  331.   *) Bug fixes, if any are discovered and reported.
  332.  
  333.   *) Your suggestions!  (email me at:  dda@panasia.com)
  334.  
  335.  
  336.                             ////////////////////
  337.                             | REVISION HISTORY |
  338.                             \\\\\\\\\\\\\\\\\\\\
  339.  
  340.   1.00, 28-Mar-1996   First public release.
  341.  
  342.   1.01, 28-Mar-1996   Fixed problem with deleting files that were
  343.                         specified, but *not* recompressed.  Stupid!
  344.                       Fixed problem with date/ time stamping archives.
  345.                       Revised an error message or two.
  346.  
  347.   1.10, 28-Mar-1996   Implemented a makeshift solution for the problem of
  348.                         overwriting duplicate-named nested archives.
  349.                       Revised some informative messages.
  350.                       Defined additional compressors (in FULL.INI).
  351.  
  352.   1.20,  2-Apr-1996   Fixed problem where original archive was sometimes
  353.                         being deleted prematurely.
  354.                       Defined additional compressors (in FULL.INI).
  355.                       Revised parameters for many compressor definitions.
  356.                       Added kludges to make some new compressors work.
  357.                       Revised some additional informative messages.
  358.                       Added option to only convert primary archives (-1).
  359.                       Added external program to save the smallest archive
  360.                         (see SMALLEST.DOC/ .EXE), and removed SMALLEST.BTM.
  361.                       Added simple batch file to automate processing (read
  362.                         "MAKETINY.BAT" for details).
  363.  
  364.   1.25, 10-Apr-1996   Increased flexibility by allowing the user to define
  365.                         where on the command line the archive name will be
  366.                         inserted (put "%a" on the "RE=" and "DE=" lines).
  367.                       Removed most of the compressor-specific kludges.
  368.                       FACT is now smaller, and a little more efficient.
  369.                       Revised parameters for some compressor definitions.
  370.                       FACT package includes a 4DOS batch file to read files
  371.                         within archives (see 4AR.BTM).
  372.                       FACT now accepts single character switches.
  373.                       FACT now clears the screen before each primary archive
  374.                         conversion.
  375.                       FACT now informs the user which new extension is going
  376.                         to be used next.
  377.  
  378.   1.27, 23-May-1996   Added a 4DOS batch file which will list the contents
  379.                         of archives (see ARL.BTM).
  380.                       Revised 4AR.BTM to improve operation.
  381.                       Revised FULL.INI to improve operation.
  382.                       Revised switch detection to prevent accidental archive
  383.                         deletion when converting files named xxx-dyyy.ext.
  384.                       Removed kludge for PUT (I found the "QUIET" option).
  385.                       Added my "Archive Feature Comparison Chart" (AFCC.TXT).
  386.  
  387. [end]
  388.